<!DOCTYPE html>
<html>
<head>
	<title>namespace</title>
	<script type="text/javascript" src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
</head>
<body>
<p>CodePlayer</p>


<script type="text/javascript">
// 事件处理函数，弹出警告框并显示命名空间
function handler( event ){
    alert( event.namespace );
}

var $p = $("p");

// A：为所有p元素绑定click事件，定义在abc和foo两个命名空间下
$p.on( "click.abc.foo", handler );

// B：为所有p元素绑定click事件，定义在test命名空间下
$p.on( "click.test", handler );

// C：为所有p元素绑定click事件，定义在new和foo两个命名空间下
$p.on( "click.new.foo", handler );


// 执行所有的click事件处理函数，不限定命名空间 (触发A、B、C)
$p.trigger( "click" ); // ""


// 执行定义在abc命名空间下的click事件处理函数 (触发A)
$p.trigger( "click.abc" ); // "abc"
// 执行定义在foo命名空间下的click事件处理函数 (触发A和C)
$p.trigger( "click.foo" ); // "foo"
// 执行同时定义在foo和abc命名空间下的click事件处理函数 (触发A)
$p.trigger( "click.foo.abc" ); // "abc.foo"
// 执行定义在test命名空间下的click事件处理函数 (触发C)
$p.trigger( "click.test" ); // "test"


// 移除所有定义在foo命名空间下的click事件处理函数
$p.off( "click.foo" );
</script>
</body>
</html>
